package com.edu.study.base.StuCommonClassifyCatalog.service;

import java.util.List;

import com.edu.study.base.StuCommonClassifyCatalog.domain.StuCommonClassifyCatalog;

/**
 * 产品组件目录Service接口
 * 
 * @author zw
 * @date 2021-05-11
 */
public interface IStuCommonClassifyCatalogService 
{
    /**
     * 查询产品组件目录
     * 
     * @param id 产品组件目录ID
     * @return 产品组件目录
     */
    public StuCommonClassifyCatalog selectStuCommonClassifyCatalogById(String id);

    /**
     * 查询产品组件目录列表
     * 
     * @param stuCommonClassifyCatalog 产品组件目录
     * @return 产品组件目录集合
     */
    public List<StuCommonClassifyCatalog> selectStuCommonClassifyCatalogList(StuCommonClassifyCatalog stuCommonClassifyCatalog);

    public List<StuCommonClassifyCatalog> buildClassifyCatalogTree(List<StuCommonClassifyCatalog> classifyCatalogList,StuCommonClassifyCatalog stuCommonClassifyCatalog);

    /**
     * 获取课后练习习题及对应选项和答案
     * @param classifyCatalogList
     * @return
     */
    public List<StuCommonClassifyCatalog> getCourseCatalogTree(List<StuCommonClassifyCatalog> classifyCatalogList);



    /**
     * 获取目录树结构
     * @param classifyCatalogList
     * @return
     */
    public List<StuCommonClassifyCatalog> getClassifyCatalogTree(List<StuCommonClassifyCatalog> classifyCatalogList,StuCommonClassifyCatalog commonClassifyCatalog );
    /**
     * 新增产品组件目录
     * 
     * @param stuCommonClassifyCatalog 产品组件目录
     * @return 结果
     */
    public int insertStuCommonClassifyCatalog(StuCommonClassifyCatalog stuCommonClassifyCatalog);

    /**
     * 修改产品组件目录
     * 
     * @param stuCommonClassifyCatalog 产品组件目录
     * @return 结果
     */
    public int updateStuCommonClassifyCatalog(StuCommonClassifyCatalog stuCommonClassifyCatalog);

    /**
     * 批量删除产品组件目录
     * 
     * @param ids 需要删除的产品组件目录ID
     * @return 结果
     */
    public int deleteStuCommonClassifyCatalogByIds(String[] ids);

    /**
     * 删除产品组件目录信息
     * 
     * @param id 产品组件目录ID
     * @return 结果
     */
    public int deleteStuCommonClassifyCatalogById(String id);
    
    /**
     * 获取课程信息
     */
	public StuCommonClassifyCatalog selectStuCommonClassifyCatalogByCourseId(String courseId);
}
